<?php

class FormNews extends App_Form  
{
	private $newData;
	
	public function __construct($new) {
		$this->newData = $new;
		parent::__construct();
	}
	/**
     * Создание формы
     */
    public function init()
    {
        // Вызываем родительский метод
        parent::init();
        
        // Указываем action формы
        $helperUrl = new Zend_View_Helper_Url();
        $this->setAction($helperUrl->url(array(), 'adminNewForm'));
        
        // Указываем метод формы
        $this->setMethod('post');
        
        // Задаем атрибут class для формы
        $this->setAttrib('class', 'commonform');
        $this->setAttrib('name', 'newform');
        
        $id = new Zend_Form_Element_Hidden('hidden', array(
        	'name'		  => 'id',
            'value'       => $this->newData->id 
        ));
        $id->setDecorators(array('Hidden'));
        $this->addElement($id);

        $title = new Zend_Form_Element_Text('title', array(
            'required'    => true,
        	'label'       => 'Название',
            'maxlength'   => '30',
            'validators'  => array(
                array('Alnum', true, array(true)),
                array('StringLength', true, array(2, 50))
             ),
            'filters'     => array('StringTrim'),
            'value'		  => $this->newData->title
        ));
        $this->addElement($title);
        $title->setDecorators(array('Standart'));

        $text = new Zend_Form_Element_Textarea('text', array(
            'required'    => true,
        	'label'       => 'Текст новости',
            'filters'     => array('StringTrim'),
            'value'		  => $this->newData->text
        ));
        $text->setDecorators(array('FCKEditor'));
        $this->addElement($text);
        
        // Кнопка Submit
        $submit = new Zend_Form_Element_Submit('submit', array(
			'decorators' => $this->buttonDecorators,
        	'label'       => 'Сохранить',
        ));
        $this->addElement($submit);
        
        // Кнопка Reset, возвращает форму в начальное состояние
        $reset = new Zend_Form_Element_Reset('reset', array(
			'decorators' => $this->buttonDecorators,
        	'label'       => 'Очистить',
        ));
        $this->addElement($reset);
    }
}
?>